package gespap2009;

import java.util.ArrayList;
import java.util.List;

public class ControladorInstituciones {
    static List<Institucion> instituciones;

	private static ControladorInstituciones controladorInstituciones = null;

    private ControladorInstituciones() {
		instituciones = new ArrayList<Institucion>();
	}


	public static ControladorInstituciones crearControladorInstituciones(){
		if (controladorInstituciones == null)
			controladorInstituciones = new ControladorInstituciones();
		return controladorInstituciones;
	}

    public void añadirInstitucion (String nombre, String direccion){
		Institucion institucion;

       if (nombre.equalsIgnoreCase("")){
            System.out.println("El campo nombre no puede estar vacio");
            return;
        }

		int i;
		Boolean encontrado = false;
		for (i=0; i<instituciones.size(); i++){

            if (instituciones.get(i).getNombre().equalsIgnoreCase(nombre) &&
                    instituciones.get(i).getDireccion().equalsIgnoreCase(direccion)){
				System.out.println("La institucion " + nombre +
                            " ya existe en el sistema.");
				encontrado = true;
				break;
			}
		}

		if (!encontrado) {
            institucion = new Institucion (nombre, direccion);
			instituciones.add(institucion);
			System.out.println("Se ha creado la institucion: " +
                    institucion.getNombre() +".");
		}

	}
public ArrayList<Articulo> mostrarListaArticulos(String nom_institucion, String nom_curso){
		ArrayList<Articulo> listaArticulos = new ArrayList<Articulo>();
		int i = 0;
		boolean encontrado=false;
		while(i < instituciones.size() && !encontrado){
		if(instituciones.get(i).getNombre().equals(nom_institucion)){
			listaArticulos.addAll(instituciones.get(i).getArticulos(nom_curso));
			encontrado = true;
		}
		i++;
	}
	return listaArticulos;

  }



}
